home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / SDKs / Now Utilities Plug Ins 6.0 / API Stuff / Now Tabs Plug Ins ƒ / Find ƒ / Main.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-03-07  |  2.1 KB  |  97 lines  |  [TEXT/KAHL]

  1. // Find Plug In for Now Utilities 6.0
  2. // © Now Software, Inc.
  3. // 
  4. // written by hac
  5. // 3/7/96
  6. //
  7. // This module installs two grouped menu items in the Now Tabs popup:
  8. //   - Now Find
  9. //   - Super Boomerang
  10.  
  11.  
  12.  
  13. #include "Main.h"
  14.  
  15. #define        kFind            2
  16. #define        kSuperBoomerang    3
  17.  
  18. pascal void main(PlugInInformation *plugInInformation)
  19. {
  20.     plugInInformation->version = kPlugInInformationVersionOne;
  21.     plugInInformation->plugInType = kFindPlugInType;
  22.     plugInInformation->PrepareMenu = &PrepareMenu;
  23.     plugInInformation->HandleMenuItemSelected = &HandleMenuItemSelected;
  24. }
  25.  
  26. pascal void PrepareMenu(InstantAccessInformation *information, short asPreview)
  27. {
  28.     MenuSelectResultStructure            mrs;
  29.  
  30.     MenuItemInformation    menuItem;    
  31.     
  32.     // add a divider line above
  33.     menuItem.version = kMenuItemInformationVersionOne;
  34.     menuItem.classification = kMiscellaneousClassification;
  35.     menuItem.type = kDividerMenuItemType;
  36.     menuItem.id = 1;
  37.     menuItem.enabled = false;
  38.     menuItem.style = 0;
  39.     menuItem.mark = 0;
  40.     menuItem.hasSubMenu = FALSE;
  41.     menuItem.subMenu = nil;
  42.     menuItem.refCon = 0;
  43.     menuItem.owningPlugInType = kFindPlugInType;
  44.     
  45.     (*information->AddMenuItem)(&menuItem);
  46.  
  47.     // add the restart menu item        
  48.  
  49.     BlockMove("\pNow Find...", menuItem.text, kMenuItemTextSize);
  50.  
  51.     menuItem.type = kTextMenuItemType;
  52.     menuItem.id = 2;
  53.     menuItem.enabled = true;
  54.     
  55.     (*information->AddMenuItem)(&menuItem);
  56.  
  57.     // add the shutdown menu item        
  58.  
  59.     BlockMove("\pNow Super Boomerang...", menuItem.text, kMenuItemTextSize);
  60.  
  61.     menuItem.type = kTextMenuItemType;
  62.     menuItem.id = 3;
  63.     menuItem.enabled = false;
  64.     
  65.     (*information->AddMenuItem)(&menuItem);
  66.  
  67.     // add a divider line below
  68.     menuItem.type = kDividerMenuItemType;
  69.     menuItem.id = 4;
  70.     menuItem.enabled = false;
  71.     
  72.     (*information->AddMenuItem)(&menuItem);
  73. }
  74.  
  75. pascal void CleanUpAfterMenuSelect(InstantAccessInformation *information, short asPreview)
  76. {
  77.     //hmmmm....
  78. }
  79.  
  80. pascal void HandleMenuItemSelected(InstantAccessInformation *information, MenuItemInformation *menuItem)
  81. {
  82.     switch (menuItem->id) {
  83.         
  84.         case kFind:
  85.             (*information->SelectFinderMenuItem)("\pFile", "\pFind…");
  86.             break;
  87.  
  88.         case kSuperBoomerang:
  89.             break;
  90.  
  91.         otherwise:
  92.             break;
  93.  
  94.     }
  95.  
  96. }
  97.